home *** CD-ROM | disk | FTP | other *** search
/ Giga Games 1 / Giga Games.iso / net / usenet / volume2 / dungeon / patch1 < prev    next >
Encoding:
Internet Message Format  |  1987-10-10  |  45.3 KB

  1. Path: uunet!tektronix!tekgen!tekred!games-request
  2. From: games-request@tekred.TEK.COM
  3. Newsgroups: comp.sources.games
  4. Subject: v02i053:  dungeon - game of adventure, Patch1
  5. Message-ID: <1689@tekred.TEK.COM>
  6. Date: 10 Oct 87 00:06:17 GMT
  7. Sender: billr@tekred.TEK.COM
  8. Lines: 1297
  9. Approved: billr@tekred.TEK.COM
  10.  
  11. Submitted by: Bill Randle <games-request@tekred.TEK.COM>
  12. Comp.sources.games: Volume 2, Issue 53
  13. Archive-name: dungeon/Patch1
  14.  
  15.     [This is the first official patch for dungeon, posted in two
  16.      parts (Patch1 and Patch2).  See README.pch for more info.
  17.      Run the dungeon.pch file thru patch(1) to update your sources.]
  18.  
  19. #! /bin/sh
  20. # This is a shell archive.  Remove anything before this line, then unpack
  21. # it by saving it into a file and typing "sh file".  To overwrite existing
  22. # files, type "sh file -c".  You can also feed this as standard input via
  23. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  24. # will see the following message at the end:
  25. #        "End of shell archive."
  26. # Contents:  README.pch Makefile.bsd Makefile.sun Makefile.sysv
  27. #   dungeon.pch
  28. # Wrapped by billr@tekred on Fri Oct  9 17:01:57 1987
  29. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  30. if test -f README.pch -a "${1}" != "-c" ; then 
  31.   echo shar: Will not over-write existing file \"README.pch\"
  32. else
  33. echo shar: Extracting \"README.pch\" \(848 characters\)
  34. sed "s/^X//" >README.pch <<'END_OF_README.pch'
  35. XOfficial patches 1 and 2 for net release of dungeon.   Oct. 9, 1987
  36. X
  37. XPatch1 contains the patches to the source files and Makefile.  Patch2
  38. Xcontains the patches to the uuencoded text file (dtext.dat.uu).  I
  39. Xhad to split this up into two patches because of the size of the
  40. Xcontext diffs to the text file.
  41. X
  42. XThe Makefile has been split into three pre-configured makefiles for
  43. Xgeneric BSD systems, System V systems and Suns.  Copy the one that
  44. Xbest matches your system into the file Makefile and edit the paths,
  45. Xetc. as needed.
  46. X
  47. XThe sources patches fix a few logic bugs in the program, but mainly
  48. Xconsist of cleanups for System V compatability.  Thanks to Dave
  49. XNewkirk (ihnp4!ihlpm!dcn) and Randy (randy@peora.ccur.com) for their
  50. Xinvaluable help in this area.
  51. X
  52. X    -Bill Randle
  53. X    Moderator, comp.sources.games
  54. X    Tektronix, Inc.
  55. X    games-request@tekred.TEK.COM
  56. END_OF_README.pch
  57. if test 848 -ne `wc -c <README.pch`; then
  58.     echo shar: \"README.pch\" unpacked with wrong size!
  59. fi
  60. # end of overwriting check
  61. fi
  62. if test -f Makefile.bsd -a "${1}" != "-c" ; then 
  63.   echo shar: Will not over-write existing file \"Makefile.bsd\"
  64. else
  65. echo shar: Extracting \"Makefile.bsd\" \(9540 characters\)
  66. sed "s/^X//" >Makefile.bsd <<'END_OF_Makefile.bsd'
  67. X# Makefile for creating dungeon
  68. X# Edit BIN DDIR and FFLAGS suitable for your system
  69. X# Also, if you are running System V change the .F.o production
  70. X#  and production for dinit.F as indicated.
  71. X#
  72. X# need SUFFIXES for System V (doesn't grok .F)
  73. X.SUFFIXES: .F
  74. X.c.o:
  75. X    cc -c $(CFLAGS) $*.c
  76. X.F.o:
  77. X    f77 -c $(FFLAGS) $*.F
  78. X# For System V use the following production instead:
  79. X#    @/lib/cpp $(CPPFLAGS) $*.F > $*.f
  80. X#    f77 -c $(FFLAGS) $*.f
  81. X#    rm $*.f
  82. X
  83. X# define SYSV if running System V or V7
  84. XCFLAGS = -O # -DSYSV -g -i
  85. XCPPFLAGS = -P
  86. X#
  87. X# f77 compiler flags for BSD Vax (and other similar machines)
  88. XFOPTS = -q # -g -Ddebug
  89. X# use -Nn650 for System V to increase default symbol table size
  90. X# also, define SYSV and no -g flag (causes runtime errors)
  91. X#FOPTS = -q -Nn650 -DSYSV # -Ddebug
  92. X# f77 compiler flags for pdp (64K split I/D)
  93. X#FOPTS = -q -I2 -L1 -i -DPDP # -Nn650 -Ddebug
  94. XFFLAGS = -O $(FOPTS)
  95. X
  96. X# flags for the loader
  97. XLDFLAGS = # -s -g -v
  98. X
  99. X# Directory path for main program - default /usr/games
  100. XBIN = /usr/games
  101. X# Directory path for data files - default is /usr/games/lib/dunlib
  102. XLIB = /usr/games/lib/dunlib
  103. XDDIR = \'/usr/games/lib/dunlib
  104. XDCDIR =\"/usr/games/lib/dunlib
  105. X# Directory path for man page - default /usr/manl/man6
  106. XMDIR = /usr/manl/man6
  107. X# userid for wizard - allows invoking game debugging tool - default 0
  108. XWIZDEF = -DWIZARDID=320
  109. X
  110. XHDRS =    advers.h clock.h curxt.h debug.h exits.h files.h flags.h\
  111. X    gamestate.h io.h mindex.h objects.h oflags.h oindex.h\
  112. X    parser.h puzzle.h rflag.h rindex.h rooms.h screen.h state.h\
  113. X    verbs.h villians.h vocab.h xpars.h xsrch.h
  114. X
  115. XFSRC =  actors.F ballop.F clockr.F demons.F\
  116. X    dgame.F dinit.F dmain.F dso1.F dso2.F\
  117. X    dso3.F dso4.F dso5.F dso6.F dso7.F\
  118. X    dsub.F dverb1.F dverb2.F gdt.F lightp.F\
  119. X    nobjs.F np.F np1.F np2.F np3.F nrooms.F objcts.F\
  120. X    rooms.F sobjs.F sverbs.F verbs.F villns.F
  121. X
  122. XCSRC =    cinit.c cio.c cspeak.c decode.c lex.c listen.c rtim.c
  123. X
  124. XOBJS =  actors.o ballop.o clockr.o demons.o\
  125. X    dgame.o dinit.o dmain.o dso1.o dso2.o\
  126. X    dso3.o dso4.o dso5.o dso6.o dso7.o\
  127. X    dsub.o dverb1.o dverb2.o gdt.o lightp.o\
  128. X    nobjs.o np.o np1.o np2.o np3.o nrooms.o objcts.o\
  129. X    rooms.o rtim.o sobjs.o sverbs.o verbs.o villns.o
  130. X
  131. XPDPOBJS = cinit.o cio.o lex.o
  132. XLISTEN = listen.o
  133. XSPEAK = cspeak.o speak.o
  134. X
  135. Xvax:    dungeon dtext.dat
  136. Xpdp:    dungpdp speak listen dtext.dat
  137. X
  138. Xdungeon: $(OBJS)
  139. X    f77 -o dungeon $(OBJS) $(LDFLAGS)
  140. X    @echo done
  141. X
  142. Xdungpdp: $(OBJS) $(PDPOBJS)
  143. X    f77 -i -s -o dungpdp $(OBJS) $(PDPOBJS)
  144. X    @echo done
  145. X
  146. Xspeak:    $(SPEAK)
  147. X    f77 -i -s -o speak $(SPEAK)
  148. X    
  149. Xspeak.o: speak.F
  150. X    f77 $(FFLAGS) -DDDIR=$(DDIR) -c speak.F
  151. X# For System V use the following instead:
  152. X#    @/lib/cpp $(CPPFLAGS) speak.F > speak.f
  153. X#    f77 $(FFLAGS) -DDDIR=$(DDIR) -c speak.f
  154. X#    rm $*.f
  155. X
  156. Xlisten:    $(LISTEN)
  157. X    cc $(CFLAGS) -o listen $(LISTEN)
  158. X
  159. Xlisten.o: listen.c
  160. X    cc $(CFLAGS) -DCINDEXFILE=$(DCDIR)/dindx.dat\" -c listen.c
  161. X
  162. Xdinit.o: dinit.F
  163. X    f77 $(FFLAGS) -DDDIR=$(DDIR) $(WIZDEF) -c dinit.F
  164. X# For System V use the following instead:
  165. X#    @/lib/cpp $(CPPFLAGS) dinit.F > dinit.f
  166. X#    f77 $(FFLAGS) -DDDIR=$(DDIR) $(WIZDEF) -c dinit.f
  167. X#    rm $*.f
  168. X
  169. X# uncomment the following for Suns to get around an optimizer bug
  170. X# -P means partial optimization.
  171. X#objcts.o: objcts.F
  172. X#    f77 $(FOPTS) -P -c objcts.F
  173. X
  174. Xinstall-vax: vax
  175. X    cp dungeon $(BIN)
  176. X    -mkdir $(LIB)
  177. X    cp dindx.dat dtext.dat $(LIB)
  178. X    cp dungeon.6 $(MDIR)/dungeon.6
  179. X
  180. Xinstall-pdp: pdp
  181. X    cp dungeon.sh $(BIN)
  182. X    -mkdir $(LIB)
  183. X    cp dindx.dat dtext.dat rtext.dat dungpdp $(LIB)
  184. X    cp dungeon.6 $(MDIR)/dungeon.6
  185. X
  186. Xdtext.dat: 
  187. X    ./maketxt.sh
  188. X
  189. X
  190. Xclean:
  191. X    -rm $(OBJS) Mk* core makedep eddep
  192. X
  193. Xdepend:
  194. X    grep '^#include' $(FSRC) $(CSRC) $(HDRS) | grep -v '<' | \
  195. X    sed -e 's/:[^"]*"\([^"]*\)".*/: \1/' \
  196. X        -e 's/\.c/.o/' \
  197. X        -e 's/\.F/.o/' \
  198. X        -e 's,../[a-zA-Z]*/,,' | \
  199. X    awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
  200. X        else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
  201. X               else rec = rec " " $$2 } } \
  202. X          END { print rec } ' > makedep
  203. X    echo '$$r makedep' >>eddep
  204. X    echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep
  205. X    echo '$$r makedep' >>eddep
  206. X    echo 'w' >>eddep
  207. X    cp Makefile Makefile.bak
  208. X    ed - Makefile < eddep
  209. X    rm eddep makedep
  210. X
  211. X# DO NOT DELETE THIS LINE -- make depend uses it
  212. X
  213. Xactors.o: parser.h gamestate.h rooms.h rflag.h rindex.h xsrch.h objects.h
  214. Xactors.o: oflags.h oindex.h clock.h advers.h verbs.h flags.h gamestate.h
  215. Xactors.o: debug.h rooms.h rflag.h rindex.h objects.h oflags.h oindex.h
  216. Xactors.o: villians.h flags.h
  217. Xballop.o: parser.h gamestate.h state.h rooms.h rflag.h curxt.h xpars.h
  218. Xballop.o: objects.h oflags.h oindex.h clock.h verbs.h flags.h
  219. Xclockr.o: gamestate.h state.h rooms.h rflag.h rindex.h objects.h oflags.h
  220. Xclockr.o: oindex.h clock.h curxt.h xsrch.h villians.h advers.h flags.h
  221. Xclockr.o: gamestate.h objects.h oflags.h clock.h
  222. Xdemons.o: parser.h gamestate.h objects.h oflags.h oindex.h villians.h advers.h
  223. Xdemons.o: verbs.h flags.h gamestate.h parser.h objects.h oflags.h clock.h
  224. Xdemons.o: advers.h verbs.h gamestate.h curxt.h xsrch.h objects.h oindex.h
  225. Xdemons.o: villians.h advers.h rindex.h objects.h oindex.h villians.h flags.h
  226. Xdgame.o: parser.h gamestate.h state.h io.h rooms.h rindex.h objects.h oflags.h
  227. Xdgame.o: oindex.h advers.h verbs.h flags.h parser.h villians.h gamestate.h
  228. Xdgame.o: objects.h advers.h
  229. Xdinit.o: files.h parser.h gamestate.h state.h screen.h mindex.h io.h debug.h
  230. Xdinit.o: rooms.h rflag.h rindex.h exits.h curxt.h xpars.h objects.h oindex.h
  231. Xdinit.o: clock.h villians.h advers.h flags.h
  232. Xdmain.o: parser.h gamestate.h state.h screen.h puzzle.h io.h debug.h rooms.h
  233. Xdmain.o: rflag.h rindex.h exits.h curxt.h xpars.h xsrch.h objects.h oflags.h
  234. Xdmain.o: oindex.h clock.h villians.h advers.h verbs.h flags.h
  235. Xdso1.o: gamestate.h rooms.h rflag.h objects.h oflags.h oindex.h advers.h
  236. Xdso1.o: flags.h gamestate.h objects.h oflags.h advers.h objects.h
  237. Xdso2.o: gamestate.h rooms.h rflag.h objects.h oindex.h advers.h gamestate.h
  238. Xdso2.o: state.h advers.h flags.h gamestate.h state.h clock.h advers.h flags.h
  239. Xdso3.o: rooms.h exits.h curxt.h xpars.h objects.h oflags.h
  240. Xdso4.o: objects.h oflags.h objects.h oflags.h objects.h state.h advers.h
  241. Xdso4.o: parser.h objects.h oflags.h oindex.h villians.h flags.h
  242. Xdso5.o: parser.h objects.h oflags.h verbs.h rooms.h rflag.h objects.h oflags.h
  243. Xdso5.o: advers.h objects.h
  244. Xdso6.o: rooms.h rflag.h rindex.h rindex.h flags.h
  245. Xdso7.o: rooms.h rflag.h rindex.h objects.h oflags.h flags.h flags.h
  246. Xdsub.o: gamestate.h mindex.h io.h parser.h objects.h debug.h objects.h
  247. Xdsub.o: objects.h objects.h parser.h gamestate.h state.h io.h debug.h rooms.h
  248. Xdsub.o: rflag.h rindex.h objects.h oflags.h oindex.h advers.h flags.h advers.h
  249. Xdsub.o: flags.h parser.h gamestate.h screen.h rooms.h rflag.h xsrch.h objects.h
  250. Xdsub.o: advers.h verbs.h flags.h
  251. Xdverb1.o: parser.h gamestate.h state.h objects.h oflags.h advers.h parser.h
  252. Xdverb1.o: gamestate.h rindex.h objects.h oflags.h advers.h verbs.h parser.h
  253. Xdverb1.o: gamestate.h objects.h oflags.h advers.h verbs.h parser.h gamestate.h
  254. Xdverb1.o: objects.h oflags.h verbs.h
  255. Xdverb2.o: parser.h gamestate.h state.h screen.h puzzle.h rooms.h exits.h
  256. Xdverb2.o: objects.h clock.h villians.h advers.h flags.h parser.h gamestate.h
  257. Xdverb2.o: state.h screen.h puzzle.h rooms.h exits.h objects.h clock.h
  258. Xdverb2.o: villians.h advers.h flags.h parser.h gamestate.h rooms.h rflag.h
  259. Xdverb2.o: curxt.h xsrch.h objects.h oflags.h clock.h villians.h advers.h
  260. Xdverb2.o: flags.h gamestate.h parser.h puzzle.h rooms.h rindex.h exits.h
  261. Xdverb2.o: curxt.h xpars.h xsrch.h objects.h oflags.h oindex.h advers.h flags.h
  262. Xgdt.o: parser.h gamestate.h state.h screen.h puzzle.h io.h mindex.h debug.h
  263. Xgdt.o: rooms.h rindex.h exits.h objects.h oindex.h clock.h villians.h advers.h
  264. Xgdt.o: flags.h
  265. Xlightp.o: parser.h gamestate.h objects.h oflags.h oindex.h clock.h verbs.h
  266. Xlightp.o: flags.h
  267. Xnobjs.o: parser.h gamestate.h state.h screen.h puzzle.h rooms.h rflag.h
  268. Xnobjs.o: rindex.h objects.h oflags.h oindex.h clock.h villians.h advers.h
  269. Xnobjs.o: verbs.h flags.h gamestate.h parser.h verbs.h flags.h
  270. Xnp.o: parser.h io.h debug.h parser.h xsrch.h parser.h debug.h
  271. Xnp1.o: parser.h gamestate.h debug.h objects.h oindex.h advers.h verbs.h vocab.h
  272. Xnp2.o: parser.h gamestate.h debug.h objects.h oflags.h advers.h vocab.h
  273. Xnp2.o: objects.h oflags.h vocab.h
  274. Xnp3.o: parser.h vocab.h debug.h vocab.h parser.h objects.h parser.h parser.h
  275. Xnp3.o: gamestate.h state.h objects.h oflags.h advers.h parser.h gamestate.h
  276. Xnp3.o: objects.h oflags.h advers.h
  277. Xnrooms.o: parser.h gamestate.h state.h io.h rooms.h rflag.h rindex.h objects.h
  278. Xnrooms.o: oflags.h oindex.h xsrch.h clock.h advers.h verbs.h flags.h
  279. Xnrooms.o: gamestate.h flags.h rindex.h flags.h
  280. Xobjcts.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  281. Xobjcts.o: oflags.h oindex.h clock.h advers.h verbs.h flags.h
  282. Xrooms.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  283. Xrooms.o: oflags.h oindex.h clock.h villians.h advers.h verbs.h flags.h
  284. Xsobjs.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  285. Xsobjs.o: oflags.h oindex.h clock.h villians.h advers.h verbs.h flags.h
  286. Xsverbs.o: parser.h gamestate.h state.h screen.h io.h rooms.h rflag.h rindex.h
  287. Xsverbs.o: exits.h curxt.h xpars.h xsrch.h objects.h oflags.h oindex.h clock.h
  288. Xsverbs.o: advers.h verbs.h flags.h
  289. Xverbs.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h xsrch.h
  290. Xverbs.o: objects.h oflags.h oindex.h advers.h verbs.h clock.h
  291. Xvillns.o: parser.h gamestate.h objects.h oflags.h oindex.h verbs.h flags.h
  292. Xvillns.o: parser.h gamestate.h objects.h oflags.h oindex.h verbs.h flags.h
  293. Xvillns.o: parser.h gamestate.h rindex.h objects.h oflags.h oindex.h clock.h
  294. Xvillns.o: villians.h verbs.h flags.h
  295. END_OF_Makefile.bsd
  296. if test 9540 -ne `wc -c <Makefile.bsd`; then
  297.     echo shar: \"Makefile.bsd\" unpacked with wrong size!
  298. fi
  299. # end of overwriting check
  300. fi
  301. if test -f Makefile.sun -a "${1}" != "-c" ; then 
  302.   echo shar: Will not over-write existing file \"Makefile.sun\"
  303. else
  304. echo shar: Extracting \"Makefile.sun\" \(9540 characters\)
  305. sed "s/^X//" >Makefile.sun <<'END_OF_Makefile.sun'
  306. X# Makefile for creating dungeon
  307. X# Edit BIN DDIR and FFLAGS suitable for your system
  308. X# Also, if you are running System V change the .F.o production
  309. X#  and production for dinit.F as indicated.
  310. X#
  311. X# need SUFFIXES for System V (doesn't grok .F)
  312. X.SUFFIXES: .F
  313. X.c.o:
  314. X    cc -c $(CFLAGS) $*.c
  315. X.F.o:
  316. X    f77 -c $(FFLAGS) $*.F
  317. X# For System V use the following production instead:
  318. X#    @/lib/cpp $(CPPFLAGS) $*.F > $*.f
  319. X#    f77 -c $(FFLAGS) $*.f
  320. X#    rm $*.f
  321. X
  322. X# define SYSV if running System V or V7
  323. XCFLAGS = -O # -DSYSV -g -i
  324. XCPPFLAGS = -P
  325. X#
  326. X# f77 compiler flags for BSD Vax (and other similar machines)
  327. XFOPTS = -q # -g -Ddebug
  328. X# use -Nn650 for System V to increase default symbol table size
  329. X# also, define SYSV and no -g flag (causes runtime errors)
  330. X#FOPTS = -q -Nn650 -DSYSV # -Ddebug
  331. X# f77 compiler flags for pdp (64K split I/D)
  332. X#FOPTS = -q -I2 -L1 -i -DPDP # -Nn650 -Ddebug
  333. XFFLAGS = -O $(FOPTS)
  334. X
  335. X# flags for the loader
  336. XLDFLAGS = # -s -g -v
  337. X
  338. X# Directory path for main program - default /usr/games
  339. XBIN = /usr/games
  340. X# Directory path for data files - default is /usr/games/lib/dunlib
  341. XLIB = /usr/games/lib/dunlib
  342. XDDIR = \'/usr/games/lib/dunlib
  343. XDCDIR =\"/usr/games/lib/dunlib
  344. X# Directory path for man page - default /usr/manl/man6
  345. XMDIR = /usr/manl/man6
  346. X# userid for wizard - allows invoking game debugging tool - default 0
  347. XWIZDEF = -DWIZARDID=320
  348. X
  349. XHDRS =    advers.h clock.h curxt.h debug.h exits.h files.h flags.h\
  350. X    gamestate.h io.h mindex.h objects.h oflags.h oindex.h\
  351. X    parser.h puzzle.h rflag.h rindex.h rooms.h screen.h state.h\
  352. X    verbs.h villians.h vocab.h xpars.h xsrch.h
  353. X
  354. XFSRC =  actors.F ballop.F clockr.F demons.F\
  355. X    dgame.F dinit.F dmain.F dso1.F dso2.F\
  356. X    dso3.F dso4.F dso5.F dso6.F dso7.F\
  357. X    dsub.F dverb1.F dverb2.F gdt.F lightp.F\
  358. X    nobjs.F np.F np1.F np2.F np3.F nrooms.F objcts.F\
  359. X    rooms.F sobjs.F sverbs.F verbs.F villns.F
  360. X
  361. XCSRC =    cinit.c cio.c cspeak.c decode.c lex.c listen.c rtim.c
  362. X
  363. XOBJS =  actors.o ballop.o clockr.o demons.o\
  364. X    dgame.o dinit.o dmain.o dso1.o dso2.o\
  365. X    dso3.o dso4.o dso5.o dso6.o dso7.o\
  366. X    dsub.o dverb1.o dverb2.o gdt.o lightp.o\
  367. X    nobjs.o np.o np1.o np2.o np3.o nrooms.o objcts.o\
  368. X    rooms.o rtim.o sobjs.o sverbs.o verbs.o villns.o
  369. X
  370. XPDPOBJS = cinit.o cio.o lex.o
  371. XLISTEN = listen.o
  372. XSPEAK = cspeak.o speak.o
  373. X
  374. Xvax:    dungeon dtext.dat
  375. Xpdp:    dungpdp speak listen dtext.dat
  376. X
  377. Xdungeon: $(OBJS)
  378. X    f77 -o dungeon $(OBJS) $(LDFLAGS)
  379. X    @echo done
  380. X
  381. Xdungpdp: $(OBJS) $(PDPOBJS)
  382. X    f77 -i -s -o dungpdp $(OBJS) $(PDPOBJS)
  383. X    @echo done
  384. X
  385. Xspeak:    $(SPEAK)
  386. X    f77 -i -s -o speak $(SPEAK)
  387. X    
  388. Xspeak.o: speak.F
  389. X    f77 $(FFLAGS) -DDDIR=$(DDIR) -c speak.F
  390. X# For System V use the following instead:
  391. X#    @/lib/cpp $(CPPFLAGS) speak.F > speak.f
  392. X#    f77 $(FFLAGS) -DDDIR=$(DDIR) -c speak.f
  393. X#    rm $*.f
  394. X
  395. Xlisten:    $(LISTEN)
  396. X    cc $(CFLAGS) -o listen $(LISTEN)
  397. X
  398. Xlisten.o: listen.c
  399. X    cc $(CFLAGS) -DCINDEXFILE=$(DCDIR)/dindx.dat\" -c listen.c
  400. X
  401. Xdinit.o: dinit.F
  402. X    f77 $(FFLAGS) -DDDIR=$(DDIR) $(WIZDEF) -c dinit.F
  403. X# For System V use the following instead:
  404. X#    @/lib/cpp $(CPPFLAGS) dinit.F > dinit.f
  405. X#    f77 $(FFLAGS) -DDDIR=$(DDIR) $(WIZDEF) -c dinit.f
  406. X#    rm $*.f
  407. X
  408. X# uncomment the following for Suns to get around an optimizer bug
  409. X# -P means partial optimization.
  410. X#objcts.o: objcts.F
  411. X#    f77 $(FOPTS) -P -c objcts.F
  412. X
  413. Xinstall-vax: vax
  414. X    cp dungeon $(BIN)
  415. X    -mkdir $(LIB)
  416. X    cp dindx.dat dtext.dat $(LIB)
  417. X    cp dungeon.6 $(MDIR)/dungeon.6
  418. X
  419. Xinstall-pdp: pdp
  420. X    cp dungeon.sh $(BIN)
  421. X    -mkdir $(LIB)
  422. X    cp dindx.dat dtext.dat rtext.dat dungpdp $(LIB)
  423. X    cp dungeon.6 $(MDIR)/dungeon.6
  424. X
  425. Xdtext.dat: 
  426. X    ./maketxt.sh
  427. X
  428. X
  429. Xclean:
  430. X    -rm $(OBJS) Mk* core makedep eddep
  431. X
  432. Xdepend:
  433. X    grep '^#include' $(FSRC) $(CSRC) $(HDRS) | grep -v '<' | \
  434. X    sed -e 's/:[^"]*"\([^"]*\)".*/: \1/' \
  435. X        -e 's/\.c/.o/' \
  436. X        -e 's/\.F/.o/' \
  437. X        -e 's,../[a-zA-Z]*/,,' | \
  438. X    awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
  439. X        else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
  440. X               else rec = rec " " $$2 } } \
  441. X          END { print rec } ' > makedep
  442. X    echo '$$r makedep' >>eddep
  443. X    echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep
  444. X    echo '$$r makedep' >>eddep
  445. X    echo 'w' >>eddep
  446. X    cp Makefile Makefile.bak
  447. X    ed - Makefile < eddep
  448. X    rm eddep makedep
  449. X
  450. X# DO NOT DELETE THIS LINE -- make depend uses it
  451. X
  452. Xactors.o: parser.h gamestate.h rooms.h rflag.h rindex.h xsrch.h objects.h
  453. Xactors.o: oflags.h oindex.h clock.h advers.h verbs.h flags.h gamestate.h
  454. Xactors.o: debug.h rooms.h rflag.h rindex.h objects.h oflags.h oindex.h
  455. Xactors.o: villians.h flags.h
  456. Xballop.o: parser.h gamestate.h state.h rooms.h rflag.h curxt.h xpars.h
  457. Xballop.o: objects.h oflags.h oindex.h clock.h verbs.h flags.h
  458. Xclockr.o: gamestate.h state.h rooms.h rflag.h rindex.h objects.h oflags.h
  459. Xclockr.o: oindex.h clock.h curxt.h xsrch.h villians.h advers.h flags.h
  460. Xclockr.o: gamestate.h objects.h oflags.h clock.h
  461. Xdemons.o: parser.h gamestate.h objects.h oflags.h oindex.h villians.h advers.h
  462. Xdemons.o: verbs.h flags.h gamestate.h parser.h objects.h oflags.h clock.h
  463. Xdemons.o: advers.h verbs.h gamestate.h curxt.h xsrch.h objects.h oindex.h
  464. Xdemons.o: villians.h advers.h rindex.h objects.h oindex.h villians.h flags.h
  465. Xdgame.o: parser.h gamestate.h state.h io.h rooms.h rindex.h objects.h oflags.h
  466. Xdgame.o: oindex.h advers.h verbs.h flags.h parser.h villians.h gamestate.h
  467. Xdgame.o: objects.h advers.h
  468. Xdinit.o: files.h parser.h gamestate.h state.h screen.h mindex.h io.h debug.h
  469. Xdinit.o: rooms.h rflag.h rindex.h exits.h curxt.h xpars.h objects.h oindex.h
  470. Xdinit.o: clock.h villians.h advers.h flags.h
  471. Xdmain.o: parser.h gamestate.h state.h screen.h puzzle.h io.h debug.h rooms.h
  472. Xdmain.o: rflag.h rindex.h exits.h curxt.h xpars.h xsrch.h objects.h oflags.h
  473. Xdmain.o: oindex.h clock.h villians.h advers.h verbs.h flags.h
  474. Xdso1.o: gamestate.h rooms.h rflag.h objects.h oflags.h oindex.h advers.h
  475. Xdso1.o: flags.h gamestate.h objects.h oflags.h advers.h objects.h
  476. Xdso2.o: gamestate.h rooms.h rflag.h objects.h oindex.h advers.h gamestate.h
  477. Xdso2.o: state.h advers.h flags.h gamestate.h state.h clock.h advers.h flags.h
  478. Xdso3.o: rooms.h exits.h curxt.h xpars.h objects.h oflags.h
  479. Xdso4.o: objects.h oflags.h objects.h oflags.h objects.h state.h advers.h
  480. Xdso4.o: parser.h objects.h oflags.h oindex.h villians.h flags.h
  481. Xdso5.o: parser.h objects.h oflags.h verbs.h rooms.h rflag.h objects.h oflags.h
  482. Xdso5.o: advers.h objects.h
  483. Xdso6.o: rooms.h rflag.h rindex.h rindex.h flags.h
  484. Xdso7.o: rooms.h rflag.h rindex.h objects.h oflags.h flags.h flags.h
  485. Xdsub.o: gamestate.h mindex.h io.h parser.h objects.h debug.h objects.h
  486. Xdsub.o: objects.h objects.h parser.h gamestate.h state.h io.h debug.h rooms.h
  487. Xdsub.o: rflag.h rindex.h objects.h oflags.h oindex.h advers.h flags.h advers.h
  488. Xdsub.o: flags.h parser.h gamestate.h screen.h rooms.h rflag.h xsrch.h objects.h
  489. Xdsub.o: advers.h verbs.h flags.h
  490. Xdverb1.o: parser.h gamestate.h state.h objects.h oflags.h advers.h parser.h
  491. Xdverb1.o: gamestate.h rindex.h objects.h oflags.h advers.h verbs.h parser.h
  492. Xdverb1.o: gamestate.h objects.h oflags.h advers.h verbs.h parser.h gamestate.h
  493. Xdverb1.o: objects.h oflags.h verbs.h
  494. Xdverb2.o: parser.h gamestate.h state.h screen.h puzzle.h rooms.h exits.h
  495. Xdverb2.o: objects.h clock.h villians.h advers.h flags.h parser.h gamestate.h
  496. Xdverb2.o: state.h screen.h puzzle.h rooms.h exits.h objects.h clock.h
  497. Xdverb2.o: villians.h advers.h flags.h parser.h gamestate.h rooms.h rflag.h
  498. Xdverb2.o: curxt.h xsrch.h objects.h oflags.h clock.h villians.h advers.h
  499. Xdverb2.o: flags.h gamestate.h parser.h puzzle.h rooms.h rindex.h exits.h
  500. Xdverb2.o: curxt.h xpars.h xsrch.h objects.h oflags.h oindex.h advers.h flags.h
  501. Xgdt.o: parser.h gamestate.h state.h screen.h puzzle.h io.h mindex.h debug.h
  502. Xgdt.o: rooms.h rindex.h exits.h objects.h oindex.h clock.h villians.h advers.h
  503. Xgdt.o: flags.h
  504. Xlightp.o: parser.h gamestate.h objects.h oflags.h oindex.h clock.h verbs.h
  505. Xlightp.o: flags.h
  506. Xnobjs.o: parser.h gamestate.h state.h screen.h puzzle.h rooms.h rflag.h
  507. Xnobjs.o: rindex.h objects.h oflags.h oindex.h clock.h villians.h advers.h
  508. Xnobjs.o: verbs.h flags.h gamestate.h parser.h verbs.h flags.h
  509. Xnp.o: parser.h io.h debug.h parser.h xsrch.h parser.h debug.h
  510. Xnp1.o: parser.h gamestate.h debug.h objects.h oindex.h advers.h verbs.h vocab.h
  511. Xnp2.o: parser.h gamestate.h debug.h objects.h oflags.h advers.h vocab.h
  512. Xnp2.o: objects.h oflags.h vocab.h
  513. Xnp3.o: parser.h vocab.h debug.h vocab.h parser.h objects.h parser.h parser.h
  514. Xnp3.o: gamestate.h state.h objects.h oflags.h advers.h parser.h gamestate.h
  515. Xnp3.o: objects.h oflags.h advers.h
  516. Xnrooms.o: parser.h gamestate.h state.h io.h rooms.h rflag.h rindex.h objects.h
  517. Xnrooms.o: oflags.h oindex.h xsrch.h clock.h advers.h verbs.h flags.h
  518. Xnrooms.o: gamestate.h flags.h rindex.h flags.h
  519. Xobjcts.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  520. Xobjcts.o: oflags.h oindex.h clock.h advers.h verbs.h flags.h
  521. Xrooms.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  522. Xrooms.o: oflags.h oindex.h clock.h villians.h advers.h verbs.h flags.h
  523. Xsobjs.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  524. Xsobjs.o: oflags.h oindex.h clock.h villians.h advers.h verbs.h flags.h
  525. Xsverbs.o: parser.h gamestate.h state.h screen.h io.h rooms.h rflag.h rindex.h
  526. Xsverbs.o: exits.h curxt.h xpars.h xsrch.h objects.h oflags.h oindex.h clock.h
  527. Xsverbs.o: advers.h verbs.h flags.h
  528. Xverbs.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h xsrch.h
  529. Xverbs.o: objects.h oflags.h oindex.h advers.h verbs.h clock.h
  530. Xvillns.o: parser.h gamestate.h objects.h oflags.h oindex.h verbs.h flags.h
  531. Xvillns.o: parser.h gamestate.h objects.h oflags.h oindex.h verbs.h flags.h
  532. Xvillns.o: parser.h gamestate.h rindex.h objects.h oflags.h oindex.h clock.h
  533. Xvillns.o: villians.h verbs.h flags.h
  534. END_OF_Makefile.sun
  535. if test 9540 -ne `wc -c <Makefile.sun`; then
  536.     echo shar: \"Makefile.sun\" unpacked with wrong size!
  537. fi
  538. # end of overwriting check
  539. fi
  540. if test -f Makefile.sysv -a "${1}" != "-c" ; then 
  541.   echo shar: Will not over-write existing file \"Makefile.sysv\"
  542. else
  543. echo shar: Extracting \"Makefile.sysv\" \(9606 characters\)
  544. sed "s/^X//" >Makefile.sysv <<'END_OF_Makefile.sysv'
  545. X# Makefile for creating dungeon
  546. X# Edit BIN DDIR and FFLAGS suitable for your system
  547. X# Also, if you are running System V change the .F.o production
  548. X#  and production for dinit.F as indicated.
  549. X#
  550. X# need SUFFIXES for System V (doesn't grok .F)
  551. X.SUFFIXES: .F
  552. X.c.o:
  553. X    cc -c $(CFLAGS) $*.c
  554. X.F.o:
  555. X#    f77 -c $(FFLAGS) $*.F
  556. X# For System V use the following production instead:
  557. X    @/lib/cpp $(CPPFLAGS) $*.F > $*.f
  558. X    f77 -c $(FFLAGS) $*.f
  559. X    rm $*.f
  560. X
  561. X# define SYSV if running System V or V7
  562. X# define SYSV *and* XELOS if running the XELOS OS
  563. XCFLAGS = -O -DSYSV # -DXELOS -g -i
  564. XCPPFLAGS = -P
  565. X#
  566. X# f77 compiler flags for BSD Vax (and other similar machines)
  567. X#FOPTS = -q # -g -Ddebug
  568. X# use -Nn650 for System V to increase default symbol table size
  569. X# also, define SYSV and no -g flag (causes runtime errors)
  570. XFOPTS = -q -Nn650 -DSYSV # -Ddebug
  571. X# f77 compiler flags for pdp (64K split I/D)
  572. X#FOPTS = -q -I2 -L1 -i -DPDP # -Nn650 -Ddebug
  573. XFFLAGS = -O $(FOPTS)
  574. X
  575. X# flags for the loader
  576. XLDFLAGS = # -s -g -v
  577. X
  578. X# Directory path for main program - default /usr/games
  579. XBIN = /usr/games
  580. X# Directory path for data files - default is /usr/games/lib/dunlib
  581. XLIB = /usr/games/lib/dunlib
  582. XDDIR = \'/usr/games/lib/dunlib
  583. XDCDIR =\"/usr/games/lib/dunlib
  584. X# Directory path for man page - default /usr/manl/man6
  585. XMDIR = /usr/manl/man6
  586. X# userid for wizard - allows invoking game debugging tool - default 0
  587. XWIZDEF = -DWIZARDID=320
  588. X
  589. XHDRS =    advers.h clock.h curxt.h debug.h exits.h files.h flags.h\
  590. X    gamestate.h io.h mindex.h objects.h oflags.h oindex.h\
  591. X    parser.h puzzle.h rflag.h rindex.h rooms.h screen.h state.h\
  592. X    verbs.h villians.h vocab.h xpars.h xsrch.h
  593. X
  594. XFSRC =  actors.F ballop.F clockr.F demons.F\
  595. X    dgame.F dinit.F dmain.F dso1.F dso2.F\
  596. X    dso3.F dso4.F dso5.F dso6.F dso7.F\
  597. X    dsub.F dverb1.F dverb2.F exit.F gdt.F lightp.F\
  598. X    nobjs.F np.F np1.F np2.F np3.F nrooms.F objcts.F\
  599. X    rooms.F sobjs.F sverbs.F verbs.F villns.F
  600. X
  601. XCSRC =    cinit.c cio.c cspeak.c decode.c lex.c listen.c rtim.c
  602. X
  603. XOBJS =  actors.o ballop.o clockr.o demons.o\
  604. X    dgame.o dinit.o dmain.o dso1.o dso2.o\
  605. X    dso3.o dso4.o dso5.o dso6.o dso7.o\
  606. X    dsub.o dverb1.o dverb2.o exit.o gdt.o lightp.o\
  607. X    nobjs.o np.o np1.o np2.o np3.o nrooms.o objcts.o\
  608. X    rooms.o rtim.o sobjs.o sverbs.o verbs.o villns.o
  609. X
  610. XPDPOBJS = cinit.o cio.o lex.o
  611. XLISTEN = listen.o
  612. XSPEAK = cspeak.o speak.o
  613. X
  614. Xvax:    dungeon dtext.dat
  615. Xpdp:    dungpdp speak listen dtext.dat
  616. X
  617. Xdungeon: $(OBJS)
  618. X    f77 -o dungeon $(OBJS) $(LDFLAGS)
  619. X    @echo done
  620. X
  621. Xdungpdp: $(OBJS) $(PDPOBJS)
  622. X    f77 -i -s -o dungpdp $(OBJS) $(PDPOBJS)
  623. X    @echo done
  624. X
  625. Xspeak:    $(SPEAK)
  626. X    f77 -i -s -o speak $(SPEAK)
  627. X    
  628. Xspeak.o: speak.F
  629. X#    f77 $(FFLAGS) -DDDIR=$(DDIR) -c speak.F
  630. X# For System V use the following instead:
  631. X    @/lib/cpp $(CPPFLAGS) speak.F > speak.f
  632. X    f77 $(FFLAGS) -DDDIR=$(DDIR) -c speak.f
  633. X    rm $*.f
  634. X
  635. Xlisten:    $(LISTEN)
  636. X    cc $(CFLAGS) -o listen $(LISTEN)
  637. X
  638. Xlisten.o: listen.c
  639. X    cc $(CFLAGS) -DCINDEXFILE=$(DCDIR)/dindx.dat\" -c listen.c
  640. X
  641. Xdinit.o: dinit.F
  642. X#    f77 $(FFLAGS) -DDDIR=$(DDIR) $(WIZDEF) -c dinit.F
  643. X# For System V use the following instead:
  644. X    @/lib/cpp $(CPPFLAGS) dinit.F > dinit.f
  645. X    f77 $(FFLAGS) -DDDIR=$(DDIR) $(WIZDEF) -c dinit.f
  646. X    rm $*.f
  647. X
  648. X# uncomment the following for Suns to get around an optimizer bug
  649. X# -P means partial optimization.
  650. X#objcts.o: objcts.F
  651. X#    f77 $(FOPTS) -P -c objcts.F
  652. X
  653. Xinstall-vax: vax
  654. X    cp dungeon $(BIN)
  655. X    -mkdir $(LIB)
  656. X    cp dindx.dat dtext.dat $(LIB)
  657. X    cp dungeon.6 $(MDIR)/dungeon.6
  658. X
  659. Xinstall-pdp: pdp
  660. X    cp dungeon.sh $(BIN)
  661. X    -mkdir $(LIB)
  662. X    cp dindx.dat dtext.dat rtext.dat dungpdp $(LIB)
  663. X    cp dungeon.6 $(MDIR)/dungeon.6
  664. X
  665. Xdtext.dat: 
  666. X    ./maketxt.sh
  667. X
  668. X
  669. Xclean:
  670. X    -rm $(OBJS) Mk* core makedep eddep
  671. X
  672. Xdepend:
  673. X    grep '^#include' $(FSRC) $(CSRC) $(HDRS) | grep -v '<' | \
  674. X    sed -e 's/:[^"]*"\([^"]*\)".*/: \1/' \
  675. X        -e 's/\.c/.o/' \
  676. X        -e 's/\.F/.o/' \
  677. X        -e 's,../[a-zA-Z]*/,,' | \
  678. X    awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
  679. X        else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
  680. X               else rec = rec " " $$2 } } \
  681. X          END { print rec } ' > makedep
  682. X    echo '$$r makedep' >>eddep
  683. X    echo '/^# DO NOT DELETE THIS LINE/+1,$$d' >eddep
  684. X    echo '$$r makedep' >>eddep
  685. X    echo 'w' >>eddep
  686. X    cp Makefile Makefile.bak
  687. X    ed - Makefile < eddep
  688. X    rm eddep makedep
  689. X
  690. X# DO NOT DELETE THIS LINE -- make depend uses it
  691. X
  692. Xactors.o: parser.h gamestate.h rooms.h rflag.h rindex.h xsrch.h objects.h
  693. Xactors.o: oflags.h oindex.h clock.h advers.h verbs.h flags.h gamestate.h
  694. Xactors.o: debug.h rooms.h rflag.h rindex.h objects.h oflags.h oindex.h
  695. Xactors.o: villians.h flags.h
  696. Xballop.o: parser.h gamestate.h state.h rooms.h rflag.h curxt.h xpars.h
  697. Xballop.o: objects.h oflags.h oindex.h clock.h verbs.h flags.h
  698. Xclockr.o: gamestate.h state.h rooms.h rflag.h rindex.h objects.h oflags.h
  699. Xclockr.o: oindex.h clock.h curxt.h xsrch.h villians.h advers.h flags.h
  700. Xclockr.o: gamestate.h objects.h oflags.h clock.h
  701. Xdemons.o: parser.h gamestate.h objects.h oflags.h oindex.h villians.h advers.h
  702. Xdemons.o: verbs.h flags.h gamestate.h parser.h objects.h oflags.h clock.h
  703. Xdemons.o: advers.h verbs.h gamestate.h curxt.h xsrch.h objects.h oindex.h
  704. Xdemons.o: villians.h advers.h rindex.h objects.h oindex.h villians.h flags.h
  705. Xdgame.o: parser.h gamestate.h state.h io.h rooms.h rindex.h objects.h oflags.h
  706. Xdgame.o: oindex.h advers.h verbs.h flags.h parser.h villians.h gamestate.h
  707. Xdgame.o: objects.h advers.h
  708. Xdinit.o: files.h parser.h gamestate.h state.h screen.h mindex.h io.h debug.h
  709. Xdinit.o: rooms.h rflag.h rindex.h exits.h curxt.h xpars.h objects.h oindex.h
  710. Xdinit.o: clock.h villians.h advers.h flags.h
  711. Xdmain.o: parser.h gamestate.h state.h screen.h puzzle.h io.h debug.h rooms.h
  712. Xdmain.o: rflag.h rindex.h exits.h curxt.h xpars.h xsrch.h objects.h oflags.h
  713. Xdmain.o: oindex.h clock.h villians.h advers.h verbs.h flags.h
  714. Xdso1.o: gamestate.h rooms.h rflag.h objects.h oflags.h oindex.h advers.h
  715. Xdso1.o: flags.h gamestate.h objects.h oflags.h advers.h objects.h
  716. Xdso2.o: gamestate.h rooms.h rflag.h objects.h oindex.h advers.h gamestate.h
  717. Xdso2.o: state.h advers.h flags.h gamestate.h state.h clock.h advers.h flags.h
  718. Xdso3.o: rooms.h exits.h curxt.h xpars.h objects.h oflags.h
  719. Xdso4.o: objects.h oflags.h objects.h oflags.h objects.h state.h advers.h
  720. Xdso4.o: parser.h objects.h oflags.h oindex.h villians.h flags.h
  721. Xdso5.o: parser.h objects.h oflags.h verbs.h rooms.h rflag.h objects.h oflags.h
  722. Xdso5.o: advers.h objects.h
  723. Xdso6.o: rooms.h rflag.h rindex.h rindex.h flags.h
  724. Xdso7.o: rooms.h rflag.h rindex.h objects.h oflags.h flags.h flags.h
  725. Xdsub.o: gamestate.h mindex.h io.h parser.h objects.h debug.h objects.h
  726. Xdsub.o: objects.h objects.h parser.h gamestate.h state.h io.h debug.h rooms.h
  727. Xdsub.o: rflag.h rindex.h objects.h oflags.h oindex.h advers.h flags.h advers.h
  728. Xdsub.o: flags.h parser.h gamestate.h screen.h rooms.h rflag.h xsrch.h objects.h
  729. Xdsub.o: advers.h verbs.h flags.h
  730. Xdverb1.o: parser.h gamestate.h state.h objects.h oflags.h advers.h parser.h
  731. Xdverb1.o: gamestate.h rindex.h objects.h oflags.h advers.h verbs.h parser.h
  732. Xdverb1.o: gamestate.h objects.h oflags.h advers.h verbs.h parser.h gamestate.h
  733. Xdverb1.o: objects.h oflags.h verbs.h
  734. Xdverb2.o: parser.h gamestate.h state.h screen.h puzzle.h rooms.h exits.h
  735. Xdverb2.o: objects.h clock.h villians.h advers.h flags.h parser.h gamestate.h
  736. Xdverb2.o: state.h screen.h puzzle.h rooms.h exits.h objects.h clock.h
  737. Xdverb2.o: villians.h advers.h flags.h parser.h gamestate.h rooms.h rflag.h
  738. Xdverb2.o: curxt.h xsrch.h objects.h oflags.h clock.h villians.h advers.h
  739. Xdverb2.o: flags.h gamestate.h parser.h puzzle.h rooms.h rindex.h exits.h
  740. Xdverb2.o: curxt.h xpars.h xsrch.h objects.h oflags.h oindex.h advers.h flags.h
  741. Xgdt.o: parser.h gamestate.h state.h screen.h puzzle.h io.h mindex.h debug.h
  742. Xgdt.o: rooms.h rindex.h exits.h objects.h oindex.h clock.h villians.h advers.h
  743. Xgdt.o: flags.h
  744. Xlightp.o: parser.h gamestate.h objects.h oflags.h oindex.h clock.h verbs.h
  745. Xlightp.o: flags.h
  746. Xnobjs.o: parser.h gamestate.h state.h screen.h puzzle.h rooms.h rflag.h
  747. Xnobjs.o: rindex.h objects.h oflags.h oindex.h clock.h villians.h advers.h
  748. Xnobjs.o: verbs.h flags.h gamestate.h parser.h verbs.h flags.h
  749. Xnp.o: parser.h io.h debug.h parser.h xsrch.h parser.h debug.h
  750. Xnp1.o: parser.h gamestate.h debug.h objects.h oindex.h advers.h verbs.h vocab.h
  751. Xnp2.o: parser.h gamestate.h debug.h objects.h oflags.h advers.h vocab.h
  752. Xnp2.o: objects.h oflags.h vocab.h
  753. Xnp3.o: parser.h vocab.h debug.h vocab.h parser.h objects.h parser.h parser.h
  754. Xnp3.o: gamestate.h state.h objects.h oflags.h advers.h parser.h gamestate.h
  755. Xnp3.o: objects.h oflags.h advers.h
  756. Xnrooms.o: parser.h gamestate.h state.h io.h rooms.h rflag.h rindex.h objects.h
  757. Xnrooms.o: oflags.h oindex.h xsrch.h clock.h advers.h verbs.h flags.h
  758. Xnrooms.o: gamestate.h flags.h rindex.h flags.h
  759. Xobjcts.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  760. Xobjcts.o: oflags.h oindex.h clock.h advers.h verbs.h flags.h
  761. Xrooms.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  762. Xrooms.o: oflags.h oindex.h clock.h villians.h advers.h verbs.h flags.h
  763. Xsobjs.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h objects.h
  764. Xsobjs.o: oflags.h oindex.h clock.h villians.h advers.h verbs.h flags.h
  765. Xsverbs.o: parser.h gamestate.h state.h screen.h io.h rooms.h rflag.h rindex.h
  766. Xsverbs.o: exits.h curxt.h xpars.h xsrch.h objects.h oflags.h oindex.h clock.h
  767. Xsverbs.o: advers.h verbs.h flags.h
  768. Xverbs.o: parser.h gamestate.h state.h rooms.h rflag.h rindex.h xsrch.h
  769. Xverbs.o: objects.h oflags.h oindex.h advers.h verbs.h clock.h
  770. Xvillns.o: parser.h gamestate.h objects.h oflags.h oindex.h verbs.h flags.h
  771. Xvillns.o: parser.h gamestate.h objects.h oflags.h oindex.h verbs.h flags.h
  772. Xvillns.o: parser.h gamestate.h rindex.h objects.h oflags.h oindex.h clock.h
  773. Xvillns.o: villians.h verbs.h flags.h
  774. END_OF_Makefile.sysv
  775. if test 9606 -ne `wc -c <Makefile.sysv`; then
  776.     echo shar: \"Makefile.sysv\" unpacked with wrong size!
  777. fi
  778. # end of overwriting check
  779. fi
  780. if test -f dungeon.pch -a "${1}" != "-c" ; then 
  781.   echo shar: Will not over-write existing file \"dungeon.pch\"
  782. else
  783. echo shar: Extracting \"dungeon.pch\" \(12478 characters\)
  784. sed "s/^X//" >dungeon.pch <<'END_OF_dungeon.pch'
  785. X*** parser.h.orig    Mon Feb  2 08:53:32 1987
  786. X--- parser.h    Fri Oct  9 08:58:57 1987
  787. X***************
  788. X*** 14,20 ****
  789. X  C
  790. X      COMMON /PV/ ACT,O1,O2,P1,P2
  791. X      INTEGER OBJVEC(2),PRPVEC(2),PVEC(5)
  792. X!     EQUIVALENCE (OBJVEC(1),O1),(PRPVEC(1),P1),(PVEC,ACT)
  793. X  C
  794. X      COMMON /SYNTAX/ VFLAG,DOBJ,DFL1,DFL2,DFW1,DFW2,
  795. X  &        IOBJ,IFL1,IFL2,IFW1,IFW2
  796. X--- 14,20 ----
  797. X  C
  798. X      COMMON /PV/ ACT,O1,O2,P1,P2
  799. X      INTEGER OBJVEC(2),PRPVEC(2),PVEC(5)
  800. X!     EQUIVALENCE (OBJVEC(1),O1),(PRPVEC(1),P1),(PVEC(1),ACT)
  801. X  C
  802. X      COMMON /SYNTAX/ VFLAG,DOBJ,DFL1,DFL2,DFW1,DFW2,
  803. X  &        IOBJ,IFL1,IFL2,IFW1,IFW2
  804. X*** /dev/null    Fri Oct  9 16:13:36 1987
  805. X--- patchlvl.h    Fri Oct  9 16:12:53 1987
  806. X***************
  807. X*** 0 ****
  808. X--- 1 ----
  809. X+ #define PATCHLEVEL 1
  810. X*** rtim.c.orig    Mon Feb  9 10:14:23 1987
  811. X--- rtim.c    Fri Oct  9 10:07:34 1987
  812. X***************
  813. X*** 4,16 ****
  814. X   * that are not available in the Unix/f77 library.
  815. X   */
  816. X  
  817. X! /* routine to get time in hours minutes and seconds */
  818. X  
  819. X  #include <sys/types.h>
  820. X  #include <sys/timeb.h>
  821. X- /* for V7 this should be <time.h> */
  822. X  #include <sys/time.h>
  823. X  
  824. X  
  825. X  long time();
  826. X  struct tm *localtime();
  827. X--- 4,23 ----
  828. X   * that are not available in the Unix/f77 library.
  829. X   */
  830. X  
  831. X! #ifdef SYSV
  832. X! #include <stdio.h>
  833. X! #endif
  834. X  
  835. X  #include <sys/types.h>
  836. X+ 
  837. X+ #ifdef SYSV
  838. X+ #include <time.h>
  839. X+ #else
  840. X  #include <sys/timeb.h>
  841. X  #include <sys/time.h>
  842. X+ #endif
  843. X  
  844. X+ /* routine to get time in hours minutes and seconds */
  845. X  
  846. X  long time();
  847. X  struct tm *localtime();
  848. X***************
  849. X*** 32,37 ****
  850. X--- 39,64 ----
  851. X      return;
  852. X  }
  853. X  
  854. X+ #ifdef SYSV
  855. X+ /* idate - return day (1-31), month (1-12) and year (AD) */
  856. X+ /*    by Dave Newkirk, ihnp4!ihlpm!dcn */
  857. X+ 
  858. X+ idate_( date )
  859. X+ long date[];
  860. X+ {
  861. X+     struct tm *t, *localtime();
  862. X+     long time(), *tloc, loc;
  863. X+ 
  864. X+     tloc = &loc;            /* get pointer to time in seconds */
  865. X+     time(tloc);
  866. X+     t = localtime(tloc);        /* get time structure filled in */
  867. X+     date[0] = t->tm_mday;
  868. X+     date[1] = t->tm_mon + 1;
  869. X+     date[2] = t->tm_year + 1900;
  870. X+ 
  871. X+ } /* end idate */
  872. X+ #endif
  873. X+ 
  874. X  /* random number initializer */
  875. X  inirnd_(seedptr)
  876. X  
  877. X***************
  878. X*** 59,61 ****
  879. X--- 86,109 ----
  880. X  
  881. X      return(rndval);
  882. X  }
  883. X+ 
  884. X+ #ifdef SYSV
  885. X+ /* thanks to Dave Newkirk, ihnp4!ihlpm!dcn for the following routines */
  886. X+ 
  887. X+ /* getuid - fortran callable getuid */
  888. X+ 
  889. X+ int
  890. X+ getuid_()
  891. X+ {
  892. X+     return (int)getuid();
  893. X+ }
  894. X+ 
  895. X+ /* unbuf - make output completely unbuffered */
  896. X+ 
  897. X+ unbuf_()
  898. X+ {
  899. X+     void setbuf();
  900. X+ 
  901. X+     setbuf(stdout, NULL);
  902. X+ }
  903. X+ #endif
  904. X*** demons.F.orig    Mon Feb  9 10:57:07 1987
  905. X--- demons.F    Fri Oct  9 15:42:21 1987
  906. X***************
  907. X*** 133,138 ****
  908. X--- 133,139 ----
  909. X      INTEGER DEF1R(3),DEF2R(4),DEF3R(5)
  910. X      INTEGER RVECTR(66),RSTATE(45)
  911. X  #include "gamestate.h"
  912. X+ #include "debug.h"
  913. X  C
  914. X  C PARSE VECTOR
  915. X  C
  916. X***************
  917. X*** 180,186 ****
  918. X      BLOW=RMISS
  919. X  C                        !ASSUME NO RESULT.
  920. X  #ifdef debug
  921. X!     PRINT 10,H,V,RMK,HFLG,OUT
  922. X  10    FORMAT(' BLOW 10-- ',3I7,L7,I7)
  923. X  #endif debug
  924. X      IF(.NOT.HFLG) GO TO 1000
  925. X--- 181,187 ----
  926. X      BLOW=RMISS
  927. X  C                        !ASSUME NO RESULT.
  928. X  #ifdef debug
  929. X!     IF(DEBUG) PRINT 10,H,V,RMK,HFLG,OUT
  930. X  10    FORMAT(' BLOW 10-- ',3I7,L7,I7)
  931. X  #endif debug
  932. X      IF(.NOT.HFLG) GO TO 1000
  933. X***************
  934. X*** 249,255 ****
  935. X  C
  936. X  2000    CONTINUE
  937. X  #ifdef debug
  938. X!     PRINT 2050,ATT,OA,DEF,OD,DWEAP
  939. X  2050    FORMAT(' BLOW 2050-- ',5I7)
  940. X  #endif debug
  941. X      IF(DEF.GT.0) GO TO 2100
  942. X--- 250,256 ----
  943. X  C
  944. X  2000    CONTINUE
  945. X  #ifdef debug
  946. X!     IF(DEBUG) PRINT 2050,ATT,OA,DEF,OD,DWEAP
  947. X  2050    FORMAT(' BLOW 2050-- ',5I7)
  948. X  #endif debug
  949. X      IF(DEF.GT.0) GO TO 2100
  950. X***************
  951. X*** 298,304 ****
  952. X      J=DV
  953. X      IF(.NOT.HFLG .AND.(DWEAP.NE.0)) J=ODESC2(DWEAP)
  954. X  #ifdef debug
  955. X!     PRINT 2650,RES,MI,I,J,MBASE
  956. X  2650    FORMAT(' BLOW 2650-- ',5I7)
  957. X  #endif debug
  958. X      CALL RSPSUB(I,J)
  959. X--- 299,305 ----
  960. X      J=DV
  961. X      IF(.NOT.HFLG .AND.(DWEAP.NE.0)) J=ODESC2(DWEAP)
  962. X  #ifdef debug
  963. X!     IF(DEBUG) PRINT 2650,RES,MI,I,J,MBASE
  964. X  2650    FORMAT(' BLOW 2650-- ',5I7)
  965. X  #endif debug
  966. X      CALL RSPSUB(I,J)
  967. X*** dmain.F.orig    Thu Feb 12 11:05:36 1987
  968. X--- dmain.F    Thu Sep 17 14:46:53 1987
  969. X***************
  970. X*** 45,51 ****
  971. X  C
  972. X  C DATA STATEMENTS FOR CONSTANT ARRAYS
  973. X  C
  974. X!     DATA VMAJ/2/,VMIN/6/,VEDIT/'A'/
  975. X  C
  976. X      DATA SDIR/o'40000'/,SIND/o'20000'/,SSTD/o'10000'/,
  977. X  &        SFLIP/o'4000'/,SDRIV/o'2000'/,SVMASK/o'777'/
  978. X--- 45,51 ----
  979. X  C
  980. X  C DATA STATEMENTS FOR CONSTANT ARRAYS
  981. X  C
  982. X!     DATA VMAJ/2/,VMIN/6/,VEDIT/'B'/
  983. X  C
  984. X      DATA SDIR/o'40000'/,SIND/o'20000'/,SSTD/o'10000'/,
  985. X  &        SFLIP/o'4000'/,SDRIV/o'2000'/,SVMASK/o'777'/
  986. X*** dso3.F.orig    Thu Sep 17 13:15:28 1987
  987. X--- dso3.F    Fri Sep 18 09:03:35 1987
  988. X***************
  989. X*** 23,29 ****
  990. X  100    I=TRAVEL(XI)
  991. X  C                        !GET ENTRY.
  992. X      XROOM1=and(I,XRMASK)
  993. X!     XTYPE=and((and(I,not(XLFLAG))/XFSHFT),XFMASK)+1
  994. X      GO TO (110,120,130,130),XTYPE
  995. X  C                        !BRANCH ON ENTRY.
  996. X      CALL BUG(10,XTYPE)
  997. X--- 23,31 ----
  998. X  100    I=TRAVEL(XI)
  999. X  C                        !GET ENTRY.
  1000. X      XROOM1=and(I,XRMASK)
  1001. X! c mask to 16-bits to get rid of sign extension problems with 32-bit ints
  1002. X!     XXXFLG = and(not(XLFLAG), 65535)
  1003. X!     XTYPE=and((and(I,XXXFLG)/XFSHFT),XFMASK)+1
  1004. X      GO TO (110,120,130,130),XTYPE
  1005. X  C                        !BRANCH ON ENTRY.
  1006. X      CALL BUG(10,XTYPE)
  1007. X*** gdt.F.orig    Thu Feb 12 11:07:59 1987
  1008. X--- gdt.F    Thu Sep 17 13:43:17 1987
  1009. X***************
  1010. X*** 18,24 ****
  1011. X      CHARACTER*2 DBGCMD(38),CMD
  1012. X      INTEGER ARGTYP(38)
  1013. X      LOGICAL VALID1,VALID2,VALID3
  1014. X!     character*2 ldbgcmd(38)
  1015. X  #include "parser.h"
  1016. X  #include "gamestate.h"
  1017. X  #include "state.h"
  1018. X--- 18,24 ----
  1019. X      CHARACTER*2 DBGCMD(38),CMD
  1020. X      INTEGER ARGTYP(38)
  1021. X      LOGICAL VALID1,VALID2,VALID3
  1022. X!     character*2 ldbgcm(38)
  1023. X  #include "parser.h"
  1024. X  #include "gamestate.h"
  1025. X  #include "state.h"
  1026. X***************
  1027. X*** 52,58 ****
  1028. X  &        'AF','HE','NR','NT','NC','ND','RR','RT','RC','RD',
  1029. X  &        'TK','EX','AR','AO','AA','AC','AX','AV','D2','DN',
  1030. X  &        'AN','DM','DT','AH','DP','PD','DZ','AZ'/
  1031. X!     DATA ldbgcmd/'dr','do','da','dc','dx','dh','dl','dv','df','ds',
  1032. X  &        'af','he','nr','nt','nc','nd','rr','rt','rc','rd',
  1033. X  &        'tk','ex','ar','ao','aa','ac','ax','av','d2','dn',
  1034. X  &        'an','dm','dt','ah','dp','pd','dz','az'/
  1035. X--- 52,58 ----
  1036. X  &        'AF','HE','NR','NT','NC','ND','RR','RT','RC','RD',
  1037. X  &        'TK','EX','AR','AO','AA','AC','AX','AV','D2','DN',
  1038. X  &        'AN','DM','DT','AH','DP','PD','DZ','AZ'/
  1039. X!     DATA ldbgcm/'dr','do','da','dc','dx','dh','dl','dv','df','ds',
  1040. X  &        'af','he','nr','nt','nc','nd','rr','rt','rc','rd',
  1041. X  &        'tk','ex','ar','ao','aa','ac','ax','av','d2','dn',
  1042. X  &        'an','dm','dt','ah','dp','pd','dz','az'/
  1043. X***************
  1044. X*** 91,97 ****
  1045. X        IF(CMD.EQ.DBGCMD(I)) GO TO 2300
  1046. X  C                        !FOUND?
  1047. X  C      check for lower case command, as well
  1048. X!       if(cmd .eq. ldbgcmd(i)) go to 2300
  1049. X  2100    CONTINUE
  1050. X  2200    WRITE(OUTCH,220)
  1051. X  C                        !NO, LOSE.
  1052. X--- 91,97 ----
  1053. X        IF(CMD.EQ.DBGCMD(I)) GO TO 2300
  1054. X  C                        !FOUND?
  1055. X  C      check for lower case command, as well
  1056. X!       if(cmd .eq. ldbgcm(i)) go to 2300
  1057. X  2100    CONTINUE
  1058. X  2200    WRITE(OUTCH,220)
  1059. X  C                        !NO, LOSE.
  1060. X*** np.F.orig    Tue Feb 10 17:25:07 1987
  1061. X--- np.F    Fri Oct  9 08:57:09 1987
  1062. X***************
  1063. X*** 43,49 ****
  1064. X      do 275 j=2,length
  1065. X        sysbuf(j-1:j-1) = buffer(j)
  1066. X  275    continue
  1067. X!     sysbuf(j:j) = char(0)
  1068. X      call system(sysbuf)
  1069. X      go to 5
  1070. X  
  1071. X--- 43,49 ----
  1072. X      do 275 j=2,length
  1073. X        sysbuf(j-1:j-1) = buffer(j)
  1074. X  275    continue
  1075. X!     sysbuf(length:length) = char(0)
  1076. X      call system(sysbuf)
  1077. X      go to 5
  1078. X  
  1079. X***************
  1080. X*** 148,160 ****
  1081. X      LOGICAL FUNCTION LEX(INBUF,INLNT,OUTBUF,OP,VBFLAG)
  1082. X      IMPLICIT INTEGER(A-Z)
  1083. X      CHARACTER INBUF(78),J,DLIMIT(9)
  1084. X!     INTEGER OUTBUF(40)
  1085. X      LOGICAL VBFLAG
  1086. X  #include "parser.h"
  1087. X  C
  1088. X  #include "debug.h"
  1089. X  C
  1090. X!     DATA DLIMIT/'A','Z',o'100','1','9',o'22','-','-',o'22'/
  1091. X  C
  1092. X      DO 100 I=1,40
  1093. X  C                        !CLEAR OUTPUT BUF.
  1094. X--- 148,170 ----
  1095. X      LOGICAL FUNCTION LEX(INBUF,INLNT,OUTBUF,OP,VBFLAG)
  1096. X      IMPLICIT INTEGER(A-Z)
  1097. X      CHARACTER INBUF(78),J,DLIMIT(9)
  1098. X!     INTEGER OUTBUF(40),ZLIMIT(9)
  1099. X      LOGICAL VBFLAG
  1100. X  #include "parser.h"
  1101. X  C
  1102. X  #include "debug.h"
  1103. X  C
  1104. X! c the System V compiler doesn't like octal initialization of character
  1105. X! c arrays, so the following is done for its benefit
  1106. X! c
  1107. X! c    DATA DLIMIT/'A','Z',o'100','1','9',o'22','-','-',o'22'/
  1108. X! c
  1109. X!     DATA ZLIMIT/o'101',o'132',o'100',o'61',o'71',o'22',o'55',o'55',o'22'/
  1110. X! c
  1111. X!     do 99 i=1,9
  1112. X!       dlimit(i) = char(zlimit(i))
  1113. X! c                    ! copy integers to chars
  1114. X! 99    continue
  1115. X  C
  1116. X      DO 100 I=1,40
  1117. X  C                        !CLEAR OUTPUT BUF.
  1118. X*** np1.F.orig    Mon Feb  9 11:47:32 1987
  1119. X--- np1.F    Fri Sep 25 16:58:35 1987
  1120. X***************
  1121. X*** 867,873 ****
  1122. X  C                        !GET CURRENT TOKEN.
  1123. X        LBUF2=LBUF(I+1)
  1124. X  #ifdef debug
  1125. X!       write(0,*) 'lbuf1=',lbuf1,' lbuf2=',lbuf2
  1126. X  #endif
  1127. X        IF(LBUF1.EQ.0) GO TO 1500
  1128. X  C                        !END OF BUFFER?
  1129. X--- 867,873 ----
  1130. X  C                        !GET CURRENT TOKEN.
  1131. X        LBUF2=LBUF(I+1)
  1132. X  #ifdef debug
  1133. X!       if (dflag) write(0,*) 'lbuf1=',lbuf1,' lbuf2=',lbuf2
  1134. X  #endif
  1135. X        IF(LBUF1.EQ.0) GO TO 1500
  1136. X  C                        !END OF BUFFER?
  1137. X***************
  1138. X*** 1023,1031 ****
  1139. X  C 6000--    UNIDENTIFIABLE OBJECT (INDEX INTO OVOC IS J)
  1140. X  C
  1141. X  6000    IF(OBJ.LT.0) GO TO 6100
  1142. X!     I=579
  1143. X!     IF(LIT(HERE)) I=618
  1144. X!     IF(VBFLAG) CALL RSPEAK(I)
  1145. X      RETURN
  1146. X  C
  1147. X  6100    IF(OBJ.NE.-10000) GO TO 6200
  1148. X--- 1023,1031 ----
  1149. X  C 6000--    UNIDENTIFIABLE OBJECT (INDEX INTO OVOC IS J)
  1150. X  C
  1151. X  6000    IF(OBJ.LT.0) GO TO 6100
  1152. X!     J=579
  1153. X!     IF(LIT(HERE)) J=618
  1154. X!     IF(VBFLAG) CALL RSPEAK(J)
  1155. X      RETURN
  1156. X  C
  1157. X  6100    IF(OBJ.NE.-10000) GO TO 6200
  1158. X*** np3.F.orig    Mon Feb  9 11:48:57 1987
  1159. X--- np3.F    Fri Sep 25 17:02:57 1987
  1160. X***************
  1161. X*** 24,30 ****
  1162. X      SYNMCH=.FALSE.
  1163. X  #ifdef debug
  1164. X      DFLAG=and(PRSFLG, 16).NE.0
  1165. X!     write(0,*) "synflags=",sdir,sind,sstd,sflip,sdriv,svmask
  1166. X  #endif
  1167. X      J=ACT
  1168. X  C                        !SET UP PTR TO SYNTAX.
  1169. X--- 24,30 ----
  1170. X      SYNMCH=.FALSE.
  1171. X  #ifdef debug
  1172. X      DFLAG=and(PRSFLG, 16).NE.0
  1173. X!     if(dflag) write(0,*) "synflags=",sdir,sind,sstd,sflip,sdriv,svmask
  1174. X  #endif
  1175. X      J=ACT
  1176. X  C                        !SET UP PTR TO SYNTAX.
  1177. X*** rooms.F.orig    Mon Feb  2 08:53:37 1987
  1178. X--- rooms.F    Fri Oct  9 09:00:04 1987
  1179. X***************
  1180. X*** 130,136 ****
  1181. X  4500    IF(PRSA.NE.WALKIW) RETURN
  1182. X  C                        !WALKIN?
  1183. X      IF(and(OFLAG2(DOOR),(OPENBT+TCHBT)).NE.OPENBT) RETURN
  1184. X!     OFLAG2(DOOR)=and(and(OFLAG2(DOOR),CHBT), not(OPENBT))
  1185. X      CALL RSPEAK(22)
  1186. X  C                        !SLAM AND BOLT DOOR.
  1187. X      RETURN
  1188. X--- 130,136 ----
  1189. X  4500    IF(PRSA.NE.WALKIW) RETURN
  1190. X  C                        !WALKIN?
  1191. X      IF(and(OFLAG2(DOOR),(OPENBT+TCHBT)).NE.OPENBT) RETURN
  1192. X!     OFLAG2(DOOR)=and( or(OFLAG2(DOOR),TCHBT), not(OPENBT))
  1193. X      CALL RSPEAK(22)
  1194. X  C                        !SLAM AND BOLT DOOR.
  1195. X      RETURN
  1196. X*** dinit.F.orig    Sat Feb 14 11:00:08 1987
  1197. X--- dinit.F    Fri Oct  9 16:57:08 1987
  1198. X***************
  1199. X*** 22,28 ****
  1200. X      IMPLICIT INTEGER (A-Z)
  1201. X  #ifndef PDP
  1202. X      LOGICAL PROTCT
  1203. X!     INTEGER DATARRY(3)
  1204. X  #endif PDP
  1205. X  #include "parser.h"
  1206. X  #include "gamestate.h"
  1207. X--- 22,28 ----
  1208. X      IMPLICIT INTEGER (A-Z)
  1209. X  #ifndef PDP
  1210. X      LOGICAL PROTCT
  1211. X!     INTEGER DATARR(3)
  1212. X  #endif PDP
  1213. X  #include "parser.h"
  1214. X  #include "gamestate.h"
  1215. X***************
  1216. X*** 53,58 ****
  1217. X--- 53,63 ----
  1218. X  C INIT, PAGE 2
  1219. X  C
  1220. X  #ifndef PDP
  1221. X+ #ifdef SYSV
  1222. X+ C make output unbuffered
  1223. X+     call unbuf
  1224. X+ C
  1225. X+ #endif
  1226. X  C FIRST CHECK FOR PROTECTION VIOLATION
  1227. X  C
  1228. X      IF(PROTCT(X)) GO TO 10000
  1229. X***************
  1230. X*** 432,438 ****
  1231. X--- 437,448 ----
  1232. X  C NOW RESTORE FROM EXISTING INDEX FILE.
  1233. X  C
  1234. X      OPEN(UNIT=1,file=INDXFILE,status='OLD',
  1235. X+ #ifdef XELOS
  1236. X+ &        FORM='FORMATTED',ACCESS='SEQUENTIAL',ERR=1900,recl=1)
  1237. X+ #else
  1238. X  &        FORM='FORMATTED',ACCESS='SEQUENTIAL',ERR=1900)
  1239. X+ #endif
  1240. X+     rewind(unit=1, err=1900)
  1241. X      READ(1,130) I,J,K
  1242. X  C                        !GET VERSION.
  1243. X      IF((I.NE.VMAJ).OR.(J.NE.VMIN))
  1244. X***************
  1245. X*** 441,446 ****
  1246. X--- 451,457 ----
  1247. X      OPEN(UNIT=DBCH,file=TEXTFILE,status='OLD',
  1248. X  &        FORM='UNFORMATTED',ACCESS='DIRECT',
  1249. X  &        recl=76,ERR=1950)
  1250. X+     rewind(unit=dbch, err=1950)
  1251. X  
  1252. X  #ifdef debug
  1253. X      PRINT 150
  1254. X***************
  1255. X*** 474,481 ****
  1256. X  1025    CALL ITIME(SHOUR,SMIN,SSEC)
  1257. X  C                        !GET TIME AND DATE.
  1258. X  C    CALL IDATE(I,J,K)
  1259. X!     CALL IDATE(DATARRY(1))
  1260. X!     CALL INIRND(or(DATARRY(1),or(DATARRY(2),DATARRY(3))),
  1261. X  &        or(SHOUR,or(SMIN,SSEC)))
  1262. X  C
  1263. X      WINNER=PLAYER
  1264. X--- 485,492 ----
  1265. X  1025    CALL ITIME(SHOUR,SMIN,SSEC)
  1266. X  C                        !GET TIME AND DATE.
  1267. X  C    CALL IDATE(I,J,K)
  1268. X!     CALL IDATE(DATARR(1))
  1269. X!     CALL INIRND(or(DATARR(1),or(DATARR(2),DATARR(3))),
  1270. X  &        or(SHOUR,or(SMIN,SSEC)))
  1271. X  C
  1272. X      WINNER=PLAYER
  1273. X*** dverb2.F.orig    Thu Sep 17 13:09:07 1987
  1274. X--- dverb2.F    Fri Oct  9 16:58:15 1987
  1275. X***************
  1276. X*** 82,87 ****
  1277. X--- 82,88 ----
  1278. X  #else
  1279. X      OPEN (UNIT=1,file='dsave.dat',ACCESS='SEQUENTIAL',
  1280. X  &        status='UNKNOWN',FORM='UNFORMATTED',ERR=100)
  1281. X+     rewind (unit=1, err=100)
  1282. X  C
  1283. X      CALL GTTIME(I)
  1284. X  C                        !GET TIME.
  1285. X***************
  1286. X*** 186,192 ****
  1287. X--- 187,198 ----
  1288. X      RETURN
  1289. X  #else
  1290. X      OPEN (UNIT=1,file='dsave.dat',ACCESS='SEQUENTIAL',
  1291. X+ #ifdef XELOS
  1292. X+ &        status='OLD',FORM='UNFORMATTED',ERR=100,recl=1)
  1293. X+ #else
  1294. X  &        status='OLD',FORM='UNFORMATTED',ERR=100)
  1295. X+ #endif
  1296. X+     rewind (unit=1, err=100)
  1297. X  C
  1298. X      READ(1) I,J,K
  1299. X      IF(or((I.NE.VMAJ),(J.NE.VMIN))) GO TO 200
  1300. END_OF_dungeon.pch
  1301. if test 12478 -ne `wc -c <dungeon.pch`; then
  1302.     echo shar: \"dungeon.pch\" unpacked with wrong size!
  1303. fi
  1304. # end of overwriting check
  1305. fi
  1306. echo shar: End of shell archive.
  1307. exit 0
  1308.